A programmable logic device (PLD) is a semiconductor integrated circuit that contains logic circuitry that can be programmed to perform a host of logic functions.
An example of a PLD that may benefit from the presently disclosed design tools and techniques include a field programmable gate array (FPGA) and, particularly an FPGA configured, within an integrated system on a chip (SOC), together with associated operating system (OS) packages.
Computer-aided design tools to design a custom logic circuit to be implemented on a PLD use information regarding the hardware capabilities of a given PLD to help the designer implement the custom logic circuit using resources available on the PLD. However, existing tools have limited abilities to assist the design of an integrated SOC that may include complex embedded processors, multiple diverse FPGA modules and FPGA module drivers as well as multiple diverse OS drivers.
Improved techniques for efficiently designing such SOC's, including producing a configuration image of the designed SOC, are therefore desirable.